package com.example.victory.swagger.model;

import java.util.Objects;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import java.util.ArrayList;
import java.util.List;
import org.springframework.validation.annotation.Validated;
import javax.validation.Valid;

/**
 * ApiResponseSituationData
 */
@Validated
@javax.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "2021-04-26T10:50:39.083+08:00")

public class ApiResponseSituationData   {
  @JsonProperty("customerTotal")
  private String customerTotal = null;

  @JsonProperty("capital")
  @Valid
  private List<ApiResponseLabelNameValue> capital = null;

  @JsonProperty("grade")
  @Valid
  private List<ApiResponseLabelNameValue> grade = null;

  @JsonProperty("account")
  @Valid
  private List<ApiResponseLabelNameValue> account = null;

  public ApiResponseSituationData customerTotal(String customerTotal) {
    this.customerTotal = customerTotal;
    return this;
  }

  /**
   * 客户总数
   * @return customerTotal
  **/
  @ApiModelProperty(value = "客户总数")


  public String getCustomerTotal() {
    return customerTotal;
  }

  public void setCustomerTotal(String customerTotal) {
    this.customerTotal = customerTotal;
  }

  public ApiResponseSituationData capital(List<ApiResponseLabelNameValue> capital) {
    this.capital = capital;
    return this;
  }

  public ApiResponseSituationData addCapitalItem(ApiResponseLabelNameValue capitalItem) {
    if (this.capital == null) {
      this.capital = new ArrayList<ApiResponseLabelNameValue>();
    }
    this.capital.add(capitalItem);
    return this;
  }

  /**
   * 资产分布
   * @return capital
  **/
  @ApiModelProperty(value = "资产分布")

  @Valid

  public List<ApiResponseLabelNameValue> getCapital() {
    return capital;
  }

  public void setCapital(List<ApiResponseLabelNameValue> capital) {
    this.capital = capital;
  }

  public ApiResponseSituationData grade(List<ApiResponseLabelNameValue> grade) {
    this.grade = grade;
    return this;
  }

  public ApiResponseSituationData addGradeItem(ApiResponseLabelNameValue gradeItem) {
    if (this.grade == null) {
      this.grade = new ArrayList<ApiResponseLabelNameValue>();
    }
    this.grade.add(gradeItem);
    return this;
  }

  /**
   * 等级分布
   * @return grade
  **/
  @ApiModelProperty(value = "等级分布")

  @Valid

  public List<ApiResponseLabelNameValue> getGrade() {
    return grade;
  }

  public void setGrade(List<ApiResponseLabelNameValue> grade) {
    this.grade = grade;
  }

  public ApiResponseSituationData account(List<ApiResponseLabelNameValue> account) {
    this.account = account;
    return this;
  }

  public ApiResponseSituationData addAccountItem(ApiResponseLabelNameValue accountItem) {
    if (this.account == null) {
      this.account = new ArrayList<ApiResponseLabelNameValue>();
    }
    this.account.add(accountItem);
    return this;
  }

  /**
   * 账户开通
   * @return account
  **/
  @ApiModelProperty(value = "账户开通")

  @Valid

  public List<ApiResponseLabelNameValue> getAccount() {
    return account;
  }

  public void setAccount(List<ApiResponseLabelNameValue> account) {
    this.account = account;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    ApiResponseSituationData apiResponseSituationData = (ApiResponseSituationData) o;
    return Objects.equals(this.customerTotal, apiResponseSituationData.customerTotal) &&
        Objects.equals(this.capital, apiResponseSituationData.capital) &&
        Objects.equals(this.grade, apiResponseSituationData.grade) &&
        Objects.equals(this.account, apiResponseSituationData.account);
  }

  @Override
  public int hashCode() {
    return Objects.hash(customerTotal, capital, grade, account);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class ApiResponseSituationData {\n");
    
    sb.append("    customerTotal: ").append(toIndentedString(customerTotal)).append("\n");
    sb.append("    capital: ").append(toIndentedString(capital)).append("\n");
    sb.append("    grade: ").append(toIndentedString(grade)).append("\n");
    sb.append("    account: ").append(toIndentedString(account)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(java.lang.Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
}

